package com.aspose.cells;

import java.util.Calendar;
import java.util.Date;

class zapb {
   static boolean a(String var0) {
      String var1 = "(^\\d{0,4}[ -/.]\\d{1,2}([ -/.]\\d{0,4})?$)|(^\\d{1,2}/\\d{1,2}$)|(^[a-z]{1,9}\\s\\d{1,2},\\s*\\d{2,4}$)|(^(\\d{1,2}[ -/.]\\s)?[a-z]{1,9}[ -/.]\\d{2,4}$)|(^\\d{0,4}[ -/]\\d{1,2}[ -/]\\d{0,4},?\\s*\\d{1,2}:\\d{2}(AM|PM)?)|(^\\d{0,4}\\s*[a-z]{1,9}\\s*\\d{0,4},?\\s*\\d{1,2}:\\d{2}(AM|PM)?)";
      return com.aspose.cells.b.a.g.a.ze.b(var0, var1, 66);
   }

   static boolean b(String var0) {
      if (var0 != null && !"".equals(var0)) {
         int var1 = 0;
         int var2 = 0;
         int var3 = -1;

         for(int var4 = 0; var4 < var0.length(); ++var4) {
            switch(var0.charAt(var4)) {
            case '+':
            case '-':
               if (var4 != 0 || var0.length() == 1) {
                  return false;
               }
               break;
            case ',':
               if (var3 != -1 && var4 - var3 != 4) {
                  return false;
               }

               var3 = var4;
               break;
            case '.':
               ++var1;
               if (var1 > 1) {
                  return false;
               }

               if (var0.length() == 1) {
                  return false;
               }

               if (var3 != -1 && var4 - var3 != 4) {
                  return false;
               }
               break;
            case '/':
            case ':':
            case ';':
            case '<':
            case '=':
            case '>':
            case '?':
            case '@':
            case 'A':
            case 'B':
            case 'C':
            case 'D':
            case 'F':
            case 'G':
            case 'H':
            case 'I':
            case 'J':
            case 'K':
            case 'L':
            case 'M':
            case 'N':
            case 'O':
            case 'P':
            case 'Q':
            case 'R':
            case 'S':
            case 'T':
            case 'U':
            case 'V':
            case 'W':
            case 'X':
            case 'Y':
            case 'Z':
            case '[':
            case '\\':
            case ']':
            case '^':
            case '_':
            case '`':
            case 'a':
            case 'b':
            case 'c':
            case 'd':
            default:
               return false;
            case '0':
            case '1':
            case '2':
            case '3':
            case '4':
            case '5':
            case '6':
            case '7':
            case '8':
            case '9':
               break;
            case 'E':
            case 'e':
               if (var2 > 0) {
                  return false;
               }

               ++var2;
               if (var4 == 0) {
                  return false;
               }

               if (var4 + 1 == var0.length()) {
                  return false;
               }

               if (var4 + 1 < var0.length()) {
                  char var5 = var0.charAt(var4 + 1);
                  if (var5 == '+' || var5 == '-') {
                     ++var4;
                  }
               }
            }
         }

         if (var3 != -1 && var0.length() - var3 != 4) {
            return false;
         } else {
            return true;
         }
      } else {
         return false;
      }
   }

   public static boolean c(String var0) {
      if (var0 != null && !"".equals(var0)) {
         var0 = var0.trim();
         if (var0.length() == 0) {
            return false;
         } else {
            int var1 = 0;
            int var2 = 0;
            boolean var3 = false;
            char var4 = com.aspose.cells.a.c.zz.a().d().c().charAt(0);

            for(int var5 = 0; var5 < var0.length(); ++var5) {
               if (var0.charAt(var5) >= '0' && var0.charAt(var5) <= '9') {
                  var3 = true;
               } else if (var0.charAt(var5) != var4 && var0.charAt(var5) != '.') {
                  switch(var0.charAt(var5)) {
                  case '+':
                  case '-':
                     if (var5 != 0 || var0.length() == 1) {
                        return false;
                     }
                     break;
                  case 'E':
                  case 'e':
                     if (var0.length() == 1 || var5 == 0 || var5 + 1 >= var0.length()) {
                        return false;
                     }

                     switch(var0.charAt(var5 + 1)) {
                     case '+':
                     case '-':
                        if (var5 + 2 >= var0.length()) {
                           return false;
                        }

                        if (!Character.isDigit(var0.charAt(var5 + 2))) {
                           return false;
                        }
                     case '0':
                     case '1':
                     case '2':
                     case '3':
                     case '4':
                     case '5':
                     case '6':
                     case '7':
                     case '8':
                     case '9':
                        ++var2;
                        if (var2 > 1) {
                           return false;
                        }

                        ++var5;
                        continue;
                     case ',':
                     case '.':
                     case '/':
                     default:
                        return false;
                     }
                  default:
                     if (var1 != 0) {
                        return false;
                     }

                     if (var0.charAt(var5) != com.aspose.cells.b.a.c.za.a().d().b().charAt(0)) {
                        return false;
                     }

                     if (var5 + 3 >= var0.length()) {
                        return false;
                     }

                     for(int var6 = 0; var6 < 3; ++var6) {
                        if (!Character.isDigit(var0.charAt(var5 + 1 + var6))) {
                           return false;
                        }
                     }

                     var5 += 3;
                  }
               } else {
                  ++var1;
                  if (var1 > 1 || var0.length() == 1) {
                     return false;
                  }
               }
            }

            return var3;
         }
      } else {
         return false;
      }
   }

   static boolean d(String var0) {
      if (var0 != null && !"".equals(var0)) {
         var0 = var0.trim();
         if (var0.length() == 0) {
            return false;
         } else {
            int var1 = 0;
            int var2 = 0;
            boolean var3 = false;
            char var4 = com.aspose.cells.a.c.zz.a().d().c().charAt(0);
            char var5 = com.aspose.cells.a.c.zz.a().d().b().charAt(0);
            int var6 = -1;

            for(int var7 = 0; var7 < var0.length(); ++var7) {
               if (var0.charAt(var7) >= '0' && var0.charAt(var7) <= '9') {
                  var3 = true;
               } else if (var0.charAt(var7) == var4) {
                  ++var1;
                  if (var1 > 1 || var0.length() == 1) {
                     return false;
                  }
               } else {
                  switch(var0.charAt(var7)) {
                  case '+':
                  case '-':
                     if (var7 != 0 || var0.length() == 1) {
                        return false;
                     }
                     break;
                  case 'E':
                     if (var0.length() != 1 && var7 != 0 && var7 <= var0.length() - 3) {
                        if (var0.charAt(var7 + 1) != '+' && var0.charAt(var7 + 1) != '-') {
                           return false;
                        }

                        ++var2;
                        if (var2 > 1) {
                           return false;
                        }

                        ++var7;
                        break;
                     }

                     return false;
                  default:
                     if (var0.charAt(var7) != var5) {
                        return false;
                     }

                     if (var6 != -1 && var7 - var6 != 4) {
                        return false;
                     }

                     var6 = var7;
                  }
               }
            }

            return var3;
         }
      } else {
         return false;
      }
   }

   static int a(char var0) {
      switch(var0) {
      case '0':
      case '1':
      case '2':
      case '3':
      case '4':
      case '5':
      case '6':
      case '7':
      case '8':
      case '9':
         return var0 - 48;
      case ':':
      case ';':
      case '<':
      case '=':
      case '>':
      case '?':
      case '@':
      case 'G':
      case 'H':
      case 'I':
      case 'J':
      case 'K':
      case 'L':
      case 'M':
      case 'N':
      case 'O':
      case 'P':
      case 'Q':
      case 'R':
      case 'S':
      case 'T':
      case 'U':
      case 'V':
      case 'W':
      case 'X':
      case 'Y':
      case 'Z':
      case '[':
      case '\\':
      case ']':
      case '^':
      case '_':
      case '`':
      default:
         return -1;
      case 'A':
      case 'B':
      case 'C':
      case 'D':
      case 'E':
      case 'F':
      case 'a':
      case 'b':
      case 'c':
      case 'd':
      case 'e':
      case 'f':
         return (var0 | 32) - 97 + 10;
      }
   }

   static Object a(Object var0, boolean var1) {
      if (var0 instanceof Double) {
         return (Double)var0;
      } else if (var0 instanceof Integer) {
         return (double)(Integer)var0;
      } else if (var0 instanceof DateTime) {
         return CellsHelper.getDoubleFromDateTime((DateTime)var0, var1);
      } else if (var0 instanceof Calendar) {
         return CellsHelper.getDoubleFromDateTime(new DateTime((Calendar)var0), var1);
      } else {
         return var0 instanceof Date ? CellsHelper.getDoubleFromDateTime(new DateTime((Date)var0), var1) : null;
      }
   }
}
